package com.dragon.modules.yuegou.entity.wallet;

import com.baomidou.mybatisplus.annotation.TableName;
import com.dragon.modules.yuegou.enums.wallet.MemberCardBuyPayCurrency;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 会员购买悦卡实体类<br>
 * 对应的表为：walt_member_card_buy<br>
 * 
 * @author pbuilder generated
 * @date 2019-06-03 15:20:36
 * @company sgy
 * @version 2.0
 */
@TableName("walt_member_card_buy")
@ApiModel(description = "会员购买悦卡")
public class MemberCardBuyEntity {

    /** 购买记录ID */
	@ApiModelProperty("购买记录ID")
	protected String id;

    /** 订单号 */
	@ApiModelProperty("订单号")
	protected String orderNo;

    /** 会员ID（冗余ID） */
	@ApiModelProperty("会员ID（冗余ID）")
	protected String memberId;

    /** 会员钱包ID（冗余ID） */
	@ApiModelProperty("会员钱包ID（冗余ID）")
	protected String memberWalletId;

    /** 悦卡模板ID */
	@ApiModelProperty("悦卡模板ID")
	protected String cardTemplateId;

    /** 购得的会员悦卡ID */
	@ApiModelProperty("购得的会员悦卡ID")
	protected String memberCardId;

    /** 悦卡面值（冗余） */
	@ApiModelProperty("悦卡面值（冗余）")
	protected BigDecimal amount;

    /** 支付的金额 */
	@ApiModelProperty("支付的金额")
	protected BigDecimal payFee;

    /** [枚举]用于购买悦卡的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY */
	@ApiModelProperty("[枚举]用于购买悦卡的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY")
	protected MemberCardBuyPayCurrency payCurrency;

    /** 购买时间 */
	@ApiModelProperty("购买时间")
	protected LocalDateTime createdTime;

    /** 第三方商户号，与第三方商户号发生交易时存在，示例：微信商户号 wx_1501780391，微信服务商商户号 wx_1505108951_1533645041，支付宝商户号：ali_2088331430099501 */
	@ApiModelProperty("第三方商户号，与第三方商户号发生交易时存在，示例：微信商户号 wx_1501780391，微信服务商商户号 wx_1505108951_1533645041，支付宝商户号：ali_2088331430099501")
	protected String thirdMchId;

	/**
	 * 构造一个空会员购买悦卡实体对象
	 */
	public MemberCardBuyEntity(){
		super();
	}

	/**
	 * 依据其它对象的信息构造一个会员购买悦卡实体对象
	 * 
	 * @param other 其它对象
	 */
	public MemberCardBuyEntity(MemberCardBuyEntity other){
		super();
     	this.id = other.id;
     	this.orderNo = other.orderNo;
     	this.memberId = other.memberId;
     	this.memberWalletId = other.memberWalletId;
     	this.cardTemplateId = other.cardTemplateId;
     	this.memberCardId = other.memberCardId;
     	this.amount = other.amount;
     	this.payFee = other.payFee;
     	this.payCurrency = other.payCurrency;
     	this.createdTime = other.createdTime;
     	this.thirdMchId = other.thirdMchId;
	}


	/**
	 * 获取购买记录ID
	 * 
	 * @return id 购买记录ID
	 */
	public String getId() {
		return id;
	}
  	
	/**
	 * 设置购买记录ID
	 * 
	 * @param id 购买记录ID
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 获取订单号
	 * 
	 * @return orderNo 订单号
	 */
	public String getOrderNo() {
		return orderNo;
	}
  	
	/**
	 * 设置订单号
	 * 
	 * @param orderNo 订单号
	 */
	public void setOrderNo(String orderNo) {
		this.orderNo = orderNo;
	}

	/**
	 * 获取会员ID（冗余ID）
	 * 
	 * @return memberId 会员ID（冗余ID）
	 */
	public String getMemberId() {
		return memberId;
	}
  	
	/**
	 * 设置会员ID（冗余ID）
	 * 
	 * @param memberId 会员ID（冗余ID）
	 */
	public void setMemberId(String memberId) {
		this.memberId = memberId;
	}

	/**
	 * 获取会员钱包ID（冗余ID）
	 * 
	 * @return memberWalletId 会员钱包ID（冗余ID）
	 */
	public String getMemberWalletId() {
		return memberWalletId;
	}
  	
	/**
	 * 设置会员钱包ID（冗余ID）
	 * 
	 * @param memberWalletId 会员钱包ID（冗余ID）
	 */
	public void setMemberWalletId(String memberWalletId) {
		this.memberWalletId = memberWalletId;
	}

	/**
	 * 获取悦卡模板ID
	 * 
	 * @return cardTemplateId 悦卡模板ID
	 */
	public String getCardTemplateId() {
		return cardTemplateId;
	}
  	
	/**
	 * 设置悦卡模板ID
	 * 
	 * @param cardTemplateId 悦卡模板ID
	 */
	public void setCardTemplateId(String cardTemplateId) {
		this.cardTemplateId = cardTemplateId;
	}

	/**
	 * 获取购得的会员悦卡ID
	 * 
	 * @return memberCardId 购得的会员悦卡ID
	 */
	public String getMemberCardId() {
		return memberCardId;
	}
  	
	/**
	 * 设置购得的会员悦卡ID
	 * 
	 * @param memberCardId 购得的会员悦卡ID
	 */
	public void setMemberCardId(String memberCardId) {
		this.memberCardId = memberCardId;
	}

	/**
	 * 获取悦卡面值（冗余）
	 * 
	 * @return amount 悦卡面值（冗余）
	 */
	public BigDecimal getAmount() {
		return amount;
	}
  	
	/**
	 * 设置悦卡面值（冗余）
	 * 
	 * @param amount 悦卡面值（冗余）
	 */
	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	/**
	 * 获取支付的金额
	 * 
	 * @return payFee 支付的金额
	 */
	public BigDecimal getPayFee() {
		return payFee;
	}
  	
	/**
	 * 设置支付的金额
	 * 
	 * @param payFee 支付的金额
	 */
	public void setPayFee(BigDecimal payFee) {
		this.payFee = payFee;
	}

	/**
	 * 获取[枚举]用于购买悦卡的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY
	 * 
	 * @return payCurrency [枚举]用于购买悦卡的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY
	 */
	public MemberCardBuyPayCurrency getPayCurrency() {
		return payCurrency;
	}
  	
	/**
	 * 设置[枚举]用于购买悦卡的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY
	 * 
	 * @param payCurrency [枚举]用于购买悦卡的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY
	 */
	public void setPayCurrency(MemberCardBuyPayCurrency payCurrency) {
		this.payCurrency = payCurrency;
	}

	/**
	 * 获取购买时间
	 * 
	 * @return createdTime 购买时间
	 */
	public LocalDateTime getCreatedTime() {
		return createdTime;
	}
  	
	/**
	 * 设置购买时间
	 * 
	 * @param createdTime 购买时间
	 */
	public void setCreatedTime(LocalDateTime createdTime) {
		this.createdTime = createdTime;
	}

	/**
	 * 获取第三方商户号，与第三方商户号发生交易时存在，示例：微信商户号 wx_1501780391，微信服务商商户号 wx_1505108951_1533645041，支付宝商户号：ali_2088331430099501
	 * 
	 * @return thirdMchId 第三方商户号，与第三方商户号发生交易时存在，示例：微信商户号 wx_1501780391，微信服务商商户号 wx_1505108951_1533645041，支付宝商户号：ali_2088331430099501
	 */
	public String getThirdMchId() {
		return thirdMchId;
	}
  	
	/**
	 * 设置第三方商户号，与第三方商户号发生交易时存在，示例：微信商户号 wx_1501780391，微信服务商商户号 wx_1505108951_1533645041，支付宝商户号：ali_2088331430099501
	 * 
	 * @param thirdMchId 第三方商户号，与第三方商户号发生交易时存在，示例：微信商户号 wx_1501780391，微信服务商商户号 wx_1505108951_1533645041，支付宝商户号：ali_2088331430099501
	 */
	public void setThirdMchId(String thirdMchId) {
		this.thirdMchId = thirdMchId;
	}

    public String toString() {
		return new StringBuilder().append("MemberCardBuyEntity{").
			append("id=").append(id).
			append(",orderNo=").append(orderNo).
			append(",memberId=").append(memberId).
			append(",memberWalletId=").append(memberWalletId).
			append(",cardTemplateId=").append(cardTemplateId).
			append(",memberCardId=").append(memberCardId).
			append(",amount=").append(amount).
			append(",payFee=").append(payFee).
			append(",payCurrency=").append(payCurrency).
			append(",createdTime=").append(createdTime).
			append(",thirdMchId=").append(thirdMchId).
			append('}').toString();
    }

	/**
	 * 复制对象
	 * 
	 * @return 复制后的新实体对象
	 */
	public MemberCardBuyEntity copy() {
		return new MemberCardBuyEntity(this);
	}

    /** 购买记录ID */
	public static final String COL_ID = "id";

    /** 订单号 */
	public static final String COL_ORDER_NO = "order_no";

    /** 会员ID（冗余ID） */
	public static final String COL_MEMBER_ID = "member_id";

    /** 会员钱包ID（冗余ID） */
	public static final String COL_MEMBER_WALLET_ID = "member_wallet_id";

    /** 悦卡模板ID */
	public static final String COL_CARD_TEMPLATE_ID = "card_template_id";

    /** 购得的会员悦卡ID */
	public static final String COL_MEMBER_CARD_ID = "member_card_id";

    /** 悦卡面值（冗余） */
	public static final String COL_AMOUNT = "amount";

    /** 支付的金额 */
	public static final String COL_PAY_FEE = "pay_fee";

    /** [枚举]用于购买悦卡的币种：4-微信虚拟币-WECHAT、5-支付宝虚拟币-ALIPAY */
	public static final String COL_PAY_CURRENCY = "pay_currency";

    /** 购买时间 */
	public static final String COL_CREATED_TIME = "created_time";

    /** 第三方商户号，与第三方商户号发生交易时存在，示例：微信商户号 wx_1501780391，微信服务商商户号 wx_1505108951_1533645041，支付宝商户号：ali_2088331430099501 */
	public static final String COL_THIRD_MCH_ID = "third_mch_id";
}
